package org.soc.timesheet.server.domain.service;
import java.util.List;
import org.soc.timesheet.custom.annotation.AOPLogger;
import org.soc.timesheet.domain.Functions;
import org.soc.timesheet.domain.Roles;
import org.springframework.roo.addon.layers.service.RooService;

@RooService(domainTypes = { org.soc.timesheet.domain.Functions.class })
public interface FunctionsService {
	
	@AOPLogger(name="service.Functions")
	public List<Functions> findByRolesesIn(List<Roles> roles);

//	List<Functions> findByRole(Roles idRole);

	public abstract long countAllFunctionses();


	public abstract void deleteFunctions(Functions functions);


	public abstract Functions findFunctions(Integer id);


	public abstract List<Functions> findAllFunctionses();


	public abstract List<Functions> findFunctionsEntries(int firstResult, int maxResults);


	public abstract void saveFunctions(Functions functions);


	public abstract Functions updateFunctions(Functions functions);

}
